### AgarHub gamme server ###

## Network config ##

# It is recommended to restrict bind_address to your local system (127.0.0.1) and make it available through
# an reverse proxy like lighttpd or Apache that can add advanced features like TLS encrypted connections
# Set bind_address to 0.0.0.0 to expose access to the whole internet

network:
    bind_address: "127.0.0.1"
    port: 3000

## Basic game config ##

# The basic configuration of you game.
# height and width define the size of the game area in pixels, merge_timer is the time until two cells
# can merge together again. With admin_pass you can set a password to enter admin mode using the chat.
# And that's probably all that makes sense to change

game:
    width: 5000
    height: 5000
    mass: 20000
    merge_timer: 15
    admin_pass: "[Your super secret password here]"

## Debugging options ##

logging:
    join_leave: true
    kill: true
    chat: true
    chat_connect: true

## Internal magic ##

# Some internal magic, do not touch this unless you know exactly what you're doing!

magic:
    slow_base: 4.5
    net_update_factor: 40
    max_heartbeat_interval: 10000
    mass_loss_rate: 1
    min_mass_loss: 50

## Player configuration ##

# mass defines the default mass everyone gets when they join. split_limit defines how many parts a
# player can split into. fire_food defines how much mass you throw at the w key.

player:
    mass: 10
    split_limit: 16
    fire_food: 20
    uniform_disposition: true

## Game objects ##

# That's the thing you want to customize to create different game-modes.
# The default config enables everything that this software supports, however only food and viruses are
# needed to recreate the default Free For All game from agar.io

# mass can be set to either an integer (number), then always this number is used, or to an array
# with two numbers as shown in the example, then a random number between those two is used

food:
    mass: [1, 5]
    limit: 1000
    uniform_disposition: true

virus:
    enable: true
    mass: [100, 150]
    limit: 50
    uniform_disposition: false
    split_mass: 180
    split_parts: 8
    style:
        fill: "#33FF33"
        stroke: "#19D119"
        stroke_width: 20

mothercell:
    enable: true
    mass: [200, 250]
    limit: 10
    uniform_disposition: false
    split_parts: 8
    food_speed: 30
    food_limit: 100
    style:
        fill: "#CE6363"
        stroke: "#BA5959"
        stroke_width: 20

food_structure:
    spiral:
        enable: true
        limit: 10
        uniform_disposition: true
        mass:
            center: 50
            border: 1
    dot_circle:
        enable: true
        limit: 10
        uniform_disposition: true
        mass:
            center: 50
            border: 1
            border_dot: 0.1

## Chat bridge connection ##

# This is totally optional and defaults to disabled. But if you want to, you can connect a external
# chat bridge using our chatConnect API to your Agar server and talk to your in-game friends using a Webchat
# or IRC for example.
# Example implementation: https://notabug.org/agarhub/chatbridge-basic

chat_connect:
    enable: true
    incoming:
        secret: "SuperSecretKeyHere"
    outgoing:
        secret: "SuperSecretKeyHere"
        host: "chat-bridge.example.com"
        port: 80
        path: "receiver.php"